Network system, device server, and network system control method

ABSTRACT

A network system enables controlling an image input device without requiring a driver that depends on the computer environment. A client terminal has a component that acquires a web page having an embedded scanner control script that controls image input from a scanner; a component that sends an image acquisition request through an interface board to the scanner as controlled by the scanner control script; and a component that gets an image from the scanner as a response to the image acquisition request as controlled by the scanner control script. The interface board receives the image acquisition request, and sends the image scanned by the scanner based on the received image acquisition request to the client terminal.

TECHNICAL FIELD

The present invention relates to a network system to which one or moreimage input devices are connected for use, a device server, and anetwork system control method.

BACKGROUND ART

Devices such as scanners and printers are commonly used connected over anetwork to a computer, but device drivers for controlling the devicesare required in order to use the devices. The device drivers aregenerally installed to the computer connected to the devices (see, forexample, PTL1).

CITATION LIST Patent Literature

[PTL1] JP-A-2002-251347

SUMMARY OF INVENTION Technical Problem

However, because device driver operation depends on the OS (operatingsystem) of the computer to which the device driver is installed, theuser must install the device driver corresponding to the OS installed onthe user's computer. However, the task of determining the OS that isused and installing software (device drivers) can be difficult for usersthat are not computer-savvy, and can be a significant burden.Reinstalling device drivers is also necessary when the computer isreplaced. Another problem is that the device manufacturer must develop adevice driver for each different computer OS, thus increasingdevelopment costs.

With consideration for the foregoing problem, an object of the presentinvention is to provide a network system enabling controlling an imageinput device without requiring a device driver that depends on thecomputer environment, to a device server, and to a network systemcontrol method.

Solution to Problem

A network system according to the invention is a network system thatincludes a web application server on which a web application operates,one or more client terminals that use a web browser to access the webapplication server, and an image input device that operates inconjunction with operation of the client terminal, wherein at least theweb application server and the client terminal, and the client terminaland the image input device, are respectively connected over a network,the network system characterized by: the client terminal including a webpage acquisition unit that gets from the web application server a webpage having an embedded image input control script that operates atleast on the web browser and controls image input from the image inputdevice, an image acquisition request transmission unit that iscontrolled by the image input control script to send an imageacquisition request to the image input device when a specific operationis performed on the acquired web page, and an image acquisition unitthat is controlled by the image input control script to acquire an imagefrom the image input device as a response to the image acquisitionrequest; and the image input device including an image acquisitionrequest receiving unit that receives the image acquisition request, andan image transmission unit that sends an image to the client terminalbased on the received image acquisition request.

A network system control method according to the invention is a controlmethod for a network system that includes a web application server onwhich a web application operates, one or more client terminals that usea web browser to access the web application server, and an image inputdevice that operates in conjunction with operation of the clientterminal, wherein at least the web application server and the clientterminal, and the client terminal and the image input device, arerespectively connected over a network, the control method of the networksystem characterized by: the client terminal executing a web pageacquisition step of getting from the web application server a web pagehaving an embedded image input control script that operates at least onthe web browser and controls image input from the image input device, animage acquisition request transmission step that is control led by theimage input control script to send an image acquisition request to theimage input device when a specific operation is performed on theacquired web page, and an image acquisition step that is controlled bythe image input control script to acquire an image from the image inputdevice as a response to the image acquisition request; and the imageinput device executing an image acquisition request reception step toreceive the image acquisition request, and an image transmission step tosend an image to the client terminal based on the received imageacquisition request.

These configurations enable acquiring a specific image from an imageinput device by means of an image input control script that is embeddedin a web page. More specifically, because the image input device can becontrolled using a web browser (in a web page), an image input devicecan be controlled by simply installing a web browser to the clientterminal, and there is no need to install a device driver (a driver forthe image input device) on each client terminal as there is with therelated art. The need to develop a plurality of device drivers fordifferent operating systems is also eliminated for the manufacturer ofthe image input device, and related development costs can therefore bereduced.

Furthermore, because a web browser is typically already installed onmost modern client terminals (computers including personal computers andsmartphones), even users that are not computer-savvy can easily use theimage input device without knowing the operating environment (the typeof operating system) of the terminal being used by the user. Note thatscanners and digital cameras are examples of image input devices.

In a network system according to another aspect of the invention, theclient terminal preferably also has a selection window display unit thatis controlled by the image input control script to display a selectionwindow for selecting whether or not to stop operation of the image inputdevice when a change event that changes the web page occurs while theimage input device is operating, and a stop operation requesttransmission unit that is controlled by the image input control scriptto send a stop operation request to the image input device when stoppingoperation of the image input device is selected in the selection window.

When the operator (user) performs an action to change the web page, thisaspect of the invention informs the user that the image input device isoperating and causes the user to select whether or not to stop operationof the image input device. Because the invention controls the imageinput device with a script (image input control script), the image inputcontrol script is lost if the web page changes while the image inputdevice is operating (processing). By displaying a selection window whenan event that changes the web page occurs, this aspect of the inventioncan prevent a process from being interrupted unintentionally as a resultof the web page being accidentally changed by the operator (user).

A network system according to another aspect of the invention preferablyalso has a printer that connects over a network to the client terminal,wherein: a printing control script that operates on the web browser andcontrols printing related to the web page is also embedded in the webpage acquired by the web page acquisition unit; the client terminalincludes a drawing process unit that is controlled by the image inputcontrol script to draw an image acquired by the image acquisition unitin a specific drawing area, a print data generating unit that iscontrolled by the printing control script in conjunction with a printoperation on the web page to generate print data that converts the imagedata drawn in the drawing area to a form that can be processed by theprinter, and a print data transmission unit that is controlled by theprinting control script to send the generated print data to the printer;and the printer includes a print data receiving unit that receives theprint data sent by the print data transmission unit, and a print controlunit that controls a printing process based on the received print data.

This aspect of the invention can print images acquired by the imageinput device from the printer (can control printing by the printer) bymeans of the printing control script embedded in the web page. Morespecifically, because printing by the printer can be controlled by ascript that operates on the web browser (operates in a web page),installing a web browser on the client terminal is sufficient, and thereis no need to install a device driver (printer driver) on each clientterminal as there is with the related art.

A device server according to the invention has the parts of the imageinput device in the network system described above, and is usedconnected to the image input device.

Further preferably, the device server of the invention also has theparts of the printer in the network system described above, and is usedconnected to the printer.

With these configurations the invention can be achieved by connectingthe device server without changing the image input device or printer(without incorporating a special function). The device server can beachieved by an interface board (interface device) that can connect tothe image input device or printer.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows the configuration of a network system according to anembodiment of the invention.

FIG. 2 is a block diagram showing the functional configuration of thenetwork system.

FIG. 3 is a flow chart describing steps in an image acquisition processand printing process on the network system.

FIG. 4 is a flowchart of steps in a process for handling an event thatchanges the web page during the image acquisition process.

DESCRIPTION OF EMBODIMENTS

A network system, device driver, and method of controlling a networksystem according to this embodiment of the invention are described belowwith reference to the accompanying figures. The network system accordingto this embodiment is a system that can run an image input process usinga web browser without installing a dedicated device driver on the clientterminal. Note that a scanner is used as an example of an image inputdevice in this embodiment.

FIG. 1 shows the configuration of the network system SY. As shown in thefigure, the network system SY includes a web application server 1, aclient terminal 2 that accesses the web application server 1, a scanner3 (image input device) that scans a specific document based on a requestfrom the client terminal 2, a printer 4 that prints based on a requestfrom the client terminal 2, and a removable interface board 5 (devicedriver) that is installed to the printer 4. The web application server 1and client terminal 2 are connected so that they can communicate overthe Internet. The client terminal 2 and interface board 5 are connectedso that they can communicate over a LAN. The scanner 3 is connectedthrough an communication unit 33 disposed to the interface board 5installed in the printer 4. The client terminal 2 can thus communicatethrough the interface board 5 with the scanner 3 and printer 4.

Note that the method of connecting to the network (Internet or LAN) maybe by wire or wireless. FIG. 1 also shows only one client terminal 2,scanner 3, and printer 4, but the invention is not so limited and anynumber of these can be used.

The web application server 1 has the hardware configuration of a generalcomputer in addition to a control unit 11, storage unit 12, andcommunication unit 13. The main parts of the control unit 11 include aCPU (central processing unit), ROM (read-only memory), and RAM (randomaccess memory). The CPU runs a program stored in ROM, and controlsoperation of the web application server 1. ROM stores control data and acontrol program enabling the CPU to execute various processes. RAM isused as working memory for the CPU to execute different processes. Thestorage unit 12 stores an HTTP server 14 and web application 15.

The communication unit 13 is an interface for communicating with theclient terminal 2 (web browser 66). Communication between the webapplication server 1 and client terminal 2 is controlled by the HTTPserver 14 using Hypertext Transfer Protocol (HTTP). More specifically,the web application server 1 receives an HTTP request from the clientterminal 2 (web browser 66), and based on the URL (Uniform ResourceLocator) contained in the HTTP request, sends a web page 21 provided bythe web application 15 to the client terminal 2.

As described in detail below, in addition to a page control script 22(JavaScript (R)) for controlling the web page 21, a printing controlscript 23 (JavaScript (R)) for controlling printing related to the webpage 21, and a scanner control script 24 (JavaScript (R), an imagecontrol script) that controls image input from the scanner 3, areincluded (embedded) in the web page 21, and the client terminal 2executes a printing process and an image acquisition process (imageinput process) by running the printing control script 23 and scannercontrol script 24 through the web browser 56 (on the web page 21). Theprinting control script 23 and scanner control script 24 can becontained on different web pages 21, or both may be contained on asingle web page

The interface board 5 includes a control unit 31, storage unit 32,communication unit 33, and board interface 34. The control unit 31primarily includes a CPU and RAM. The CPU runs a program stored in thestorage unit 32 and controls the interface board 5. RAM is used asworking memory for the CPU to execute processes. The storage unit 32 is,for example, nonvolatile memory (such as flash ROM), and stores controldata and control programs for the CPU to execute the processes. Thestorage unit 32 also an HTTP server 35.

The board interface 34 is a port for installation to the printer 4, andcommunication with the printer 3A passes through this board interface34. The communication unit 33 is an interface for communicating with theclient terminal 2 (web browser 66) and scanner 3, and comprises a groupof interfaces compatible with different kinds of connections, such as aLAN interface and a USB interface.

The HTTP server 35 handles communication between the interface board 5and the client terminal 2 (web browser 66) using HTTP. Morespecifically, when a process request for the scanner 3 (such as an imageacquisition request or stop scanning request), or a process request forthe printer 4 (such as a printing process request), is sent from theclient terminal 2 to the service endpoint address (URI) assigned to theinterface board 5, the interface board 5 sends a process command to thescanner 3 or printer 4 based on the received process request (asdescribed in detail below).

The scanner 3 primarily includes a control unit 41, storage unit 42,image reader 43, and communication unit 44. The control unit 41primarily includes a CPU and RAM. The CPU runs a program stored in thestorage unit 42 and controls the scanner 3. RAM is used as workingmemory for the CPU to execute processes. The storage unit 42 is, forexample, nonvolatile memory (such as flash ROM), and stores control dataand control programs for the CPU to execute the processes.

The image reader 43 optically reads (scans) documents, such as text orphotographs, placed on the document table (not shown) as controlled bythe CPU. The communication unit 44 is an interface for communicatingwith the interface board 5, and comprises a group of interfacescompatible with different kinds of connections, such as a LAN interfaceand a USB interface. The scanner 3 receives an image acquisition commandfrom the client terminal 2 through the interface board 5, scans thedocument, and then sends the result of scanning to the client terminal2.

The printer 4 primarily includes a control unit 51, storage unit 52,print mechanism 53, and printer interface 54. The control unit 51primarily includes a CPU and RAM. The CPU runs a program stored in thestorage unit 52 and controls the printer 4. RAM is used as workingmemory for the CPU to execute processes. The storage unit 52 is, forexample, nonvolatile memory (such as flash ROM), and stores control dataand control programs for the CPU to execute the processes.

The print mechanism 53 includes a paper feed mechanism, printhead, andpaper cutting mechanism, and performs a printing operation as controlledby the CPU. Any desired printing method may be used, including an inkjetor laser printing method. The board interface 54 is a port that connectsto the interface board 5 (board interface 34), and communicates with theinterface board 5. The printer 4 receives print data sent from theclient terminal 2 through the interface board 5, and controls the printmechanism 53 to print based on the received print data.

The client terminal 2 primarily includes a control unit 61, storage unit62, display unit 63, operating unit 64, and communication unit 65. Thecontrol unit 61 primarily includes a CPU and RAM. The CPU runs a programstored in the storage unit 62 and controls the client terminal 2. RAM isused as working memory for the CPU to run processes. The storage unit 62is, for example, a HDD (hard disk drive) or nonvolatile memory (such asflash ROM), and stores control data and control programs used by the CPUto execute different processes. The storage unit 62 also stores a webbrowser 66.

The display unit 63 displays a web page 21 acquired (downloaded) by theweb browser 66, and displays windows for reporting events accompanyingoperations performed in the web browser 66, as well as windows forconfiguring settings and selections. These windows could be displayed inthe web page 21 displayed by the web browser 66, or displayed in a newweb page 21. The operating unit 64 is an operating means for performinginput operations (such as inputting text and drawing figures), andmaking selection/decision operations, image acquisition operations(scanning operations), and printing operations, in a web page 21displayed by the web browser 66. Note that the display unit 63 andoperating unit 64 may be rendered as separate elements, or rendered inunison by, for example, using a touch screen panel as the display unit63.

The communication unit 65 is an interface for communication with the webapplication server 1 and interface board 5, and the client terminal 2uses the web browser 66 to communicate with the devices. The web browser66 is a simple browser (standard browser) with no plugin modules, andthe client terminal 2 uses this web browser 66 to access thenetwork-connected (Internet-connected) web application server 1 andreceive web pages 21 provided by the web application 15.

The web page 21 includes a page control script 22, printing controlscript 23, and scanner control script 24 as described above, and when animage acquisition operation (such as pressing a scan button or clickingon a specific area) is performed by the user in the web browser 66 (onthe web page 21), the web browser 66 runs the scanner control script 24embedded in the web page 21, acquires (inputs) the image data from thescanner 3 through the interface board 5, and draws the image data in aspecific drawing area. This drawing area is a drawing canvas (HTML5canvas element) defined (set) in the page control script 22, forexample.

When the user issues a print command (such as by pressing a printbutton) on the web page 21, the web browser 66 runs the printing controlscript 23 embedded in the web page 21, generates print data from theimage data written in the drawing area, and sends the print data to theprinter 4 through the interface board 5.

The client terminal 2 may be any computer on which the web browser 66runs, and may be a mobile terminal (such as a cellular telephone orsmartphone) or personal computer (PC), for example.

The functional configuration of the network system SY is described nextwith reference to FIG. 2. The client terminal 2 has a web pageacquisition means 71 (web page acquisition unit), image acquisitionrequest transmission means 72 (image acquisition request transmissionunit), image acquisition means 73 (image acquisition unit), drawingprocess means 74 (drawing process unit), print data generation means 75(print data generation unit), print process request transmission means76 (print process request transmission unit), and event processing means77 (selection window display unit, stop operation request transmissionunit).

The web page acquisition unit 71 primarily includes the control unit 61and web browser 66, accesses the web application server 1 (webapplication 15) through the web browser 66, and gets the desired webpage 21 (the web page 21 containing the page control script 22, printingcontrol script 23, and scanner control script 24).

The image acquisition request transmission means 72 primarily includesthe control unit 61 and scanner control script 24, and runs the scannercontrol script 24 and sends an image acquisition request (scan request)to the scanner 3 when the user performs an image acquisition operationin the web page 21. More specifically, the image acquisition requesttransmission means 72 sends an image acquisition request containingscanner identification information (information such as a scanner ID orcommunication port) identifying a scanner 3 and scanning configurationinformation (such as the scanning area, resolution, color/grayscale/monochrome setting, the image processing method to use forscanning, and a time limit to complete processing) to the serviceendpoint address of the interface board 5. The service endpoint addressof the interface board 5 and the scanner identification information arepreviously set in the scanner control script 24. The scanningconfiguration information is set by, for example, displaying a setupwindow on the web page 21 and the user inputting the settings in thesetup window when the user performs an image acquisition operation.

The image acquisition means 73 primarily includes the control unit 61and scanner control script 24, and acquires the image captured by thescanner 3 in response to the image acquisition request through theinterface board 5. Note that the image acquisition means 73 interruptsimage acquisition when the web page 21 is changed (when an unload eventoccurs) during scanning (while an image is being received). This isbecause the scanner control script 24, which is an element of the imageacquisition means 73, is embedded in the web page 21, and the scannercontrol script 24 is lost when the web page 21 is changed.

The main parts of the drawing process means 74 are the control unit 61,page control script 22, and scanner control script 24, and the drawingprocess means 74 draws the image acquired from the scanner 3 (the imagescanned by the scanner 3) in the drawing area by running the scannercontrol script 24. When the user performs an input operation on the webpage 21 displayed by the web browser 66, the drawing process means 74edits (processes) the image acquired from the scanner 3 or merges theacquired image with another image (an image selected by the user) bydrawing the result of the user input (the result of inputting text orselecting an image, for example) in the drawing area by running the pagecontrol script 22.

The main parts of the print data generation means 75 are the controlunit 61 and printing control script 23. When the user performs a printoperation (such as pressing a print button) on the web page 21, theprint data generation means 75 runs the printing control script 23 toconvert the image data drawn in the drawing area to a form that can beprocessed by the printer 4, generating print data (such as a rasterimage command, bitmap file, or XML print data). The print datageneration means 75 also temporarily stores the generated print data ina specific storage area (storage unit 62). Web storage, for example, canbe used to temporarily store the print data.

The control unit 61 and printing control script 23 are the main parts ofthe print process request transmission means 76, which sends a printingprocess request to the printer 4. More specifically, the print processrequest transmission means 76 sends a printing process requestcontaining printer identification information (such as the printer ID orcommunication port) identifying the printer 4, and the print datatemporarily stored (generated) by the print data generation means 75, tothe service endpoint address of the interface board 5. Note that theservice endpoint address of the interface board 5 and the printeridentification information are previously set in the printing controlscript 23. If the web page 21 is changed (if an unload event occurs)while the print data is being sent, the print process requesttransmission means 76 interrupts transmission. This is because theprinting control script 23, which is an element of the print processrequest transmission means 76, is embedded in the web page 21, and theprinting control script 23 is lost when the web page 21 is changed.

The event processing means 77 primarily includes the control unit 61,display unit 63, page control script 22, printing control script 23, andscanner control script 24, and reports various events to the user. Morespecifically, when a user operation causes an event that changes thedisplayed web page 21 (a beforeunload event) while the scanner controlscript 24 is running and an image is being acquired from the scanner 3(while the scanner is operating), the event processing means 77 presentsa message indicating that the scanner 3 is operating and displays anoperation selection window (selection window display unit) for selectingwhether or not to stop scanner 3 operation (whether to stop or continuescanner operation). If the user chooses to continue scanner operation inthis operation selection window, changing the web page 21 is stopped.However, if the user chooses to stop scanner operation in this operationselection window, the event processing means 77 sends a request to stopscanner 3 operation (including scanner identification information) tothe interface board 5, and displays a notice that the image acquisitionprocess was interrupted (stop operation request transmission unit).

When a user operation causes an event that changes the displayed webpage 21 while the printing control script 23 is running and the printingprocess is executing (while print data is being sent), the eventprocessing means 77 presents a change confirmation window for selectingwhether or not to change the web page 21. If the option that cancelschanging the web page is selected by the user in this changeconfirmation window, changing the web page 21 is stopped. However, ifthe option that changes the web page is selected by the user in thechange confirmation window, the event processing means 77 displays anotice indicating that print data transmission was interrupted.

The interface board 5 has a process request receiving means 81 (imageacquisition request receiving unit, print data receiving unit), processcommand means 82 (print control unit), and board-side image transmissionmeans 83 (image transmission unit). The process request receiving means81 primarily includes the control unit 31 and HTTP server 35, andreceives process requests (such as the printing process request, imageacquisition request, and stop operation request) from the clientterminal 2 (printing control script 23 and scanner control script 24).The process command means 82 primarily includes the control unit 31, andsends commands to the scanner 3 or printer 4 based on the processrequest received by the process request receiving means 81. Morespecifically, when the process request from the client terminal 2 is aprinting process request, the process command means 82 sends print datato the printer 4 specified by the printer identification information.When the process request from the client terminal 2 is an imageacquisition request, the process command means 82 sends a command basedon the image acquisition request to the scanner 3 specified by thescanner identification information. When the process request from theclient terminal 2 is a stop operation request, the process command means82 sends a command based on the stop operation request to the scanner 3specified by the scanner identification information. The board-sideimage transmission means 83 primarily includes the control unit 31 andHTTP server 35, and receives and sends the image captured by the scanner3 to the client terminal 2.

The scanner 3 primarily includes an image reading means 91, scanner-sideimage transmission means 92, and image reading interruption means 93.The image reading means 91 primarily includes a control unit 41 andimage reader 43, and based on an image acquisition command (imageacquisition request) received from the interface board 5, scans thedocument set on the document table with the image reader 43. Thescanner-side image transmission means 92 primarily includes the controlunit 41, and sends the image captured by the image reading means 91 tothe interface board 5. The image reading interruption means 93 primarilyincludes the control unit 41 and image reader 43, and based on a stopoperation command (stop operation request) received from the interfaceboard 5 stops (interrupts) scanning by the image reader 43.

The printer 4 has a printer-side print data receiving means 101 andprinting means 102. The printer-side print data receiving means 101primarily includes a control unit 51, and receives print data sent fromthe client terminal 2 through the interface board 5. The printing means102 primarily includes the control unit 51 and print mechanism 53, andprints images based on the received print data. The printing means 102prints in the printing process after all print data sent from the clientterminal 2 has been received. More specifically, the print data sentfrom the client terminal 2 is temporarily stored to a specific storagearea in the storage unit 52, and the stored print data is then read andprinted.

Steps in the image acquisition process (image input process) andprinting process in this network system SY are described next withreference to the flow chart in FIG. 3. First, the client terminal 2(control unit 61) accesses the web application server 1 (web application15) based on user operations in the web browser 66, gets the desired webpage 21 (the web page 21 containing the page control script 22, printingcontrol script 23, and scanner control script 24), and displays the webpage 21 in the web browser 66 (S01, web page acquisition step).

When the user then performs an image acquisition operation on the webpage 21 (such as clicking a scan button displayed on the web page 21),the client terminal 2 acquires an image acquisition command accompanyingthe image acquisition operation by means of the page control script 22(S02). Triggered by acquiring this image acquisition command, thescanner control script 24 is called from the page control script 22, andthe image acquisition process starts.

More specifically, the client terminal 2 sends an image acquisitionrequest to the interface board 5 (the service endpoint address of theinterface board 5) by executing the scanner control script 24 (S03,image acquisition request transmission step). Identification information(scanner identification information) for the desired scanner 3, and theconfiguration information for scanning operation, are contained in thisimage acquisition request.

The interface board 5 (control unit 31) then receives the imageacquisition request (S04, image acquisition request reception step), andissues a command (scan command) to the specified scanner 3 based on theimage acquisition request (S05). The scanner 3 (control unit 41) thatreceived the scan command from the interface board 5 controls the imagereader 43 to start the document scanning process (S06), and sends thescanned image through the interface board 5 to the client terminal 2(S07, S08, image transmission step).

Once the image that was captured by the scanner 3 is received from theinterface board 5 (S09, image acquisition step), the client terminal 2draws the image in the drawing area (S10). After the image is drawn andthe user then performs a specific input operation on the web page 21,the client terminal 2 receives the input operation according to the pagecontrol script 22 embedded in the web page 21, and draws the result ofthe received input operation in the drawing area. More specifically,processes such as editing the image acquired from the scanner 3 ormerging the image with another image selected by the user can beperformed. Process control when an event that changes the web page 21occurs as a result of user operation of the browser during the imageacquisition process (while scanning) is described below with referenceto FIG. 4.

If the user calls a printing operation from the web page 21 after theimage is drawn in S10 (such as by clicking a print button on the webpage 21), the client terminal 2 receives a print command resulting fromthe printing operation from the page control script 22 (S11). Triggeredby getting this print command, the printing control script 23 is calledfrom the page control script 22, and the printing process starts.

More specifically, the client terminal 2 image processes (such asdigitizing and gathering) the image drawn in the drawing area accordingto the printing control script 23 (S12), converts the image data toprint data in a form that can be processed by the printer 4 (S13), andsaves the resulting print data in the storage unit 62 (S14). Steps S13and S14 repeat until print data generation is completed, that is, untilall image data drawn in the drawing area is converted to print data (S15returns No).

When print data generation is completed (S15 returns Yes), the clientterminal 2 sends a printing process request to the interface board 5(the service endpoint address of the interface board 5) by running theprinting control script 23 (S16). Identification information (printeridentification information) for the desired printer 4, and the printdata stored in the storage unit 62, are included in this printingprocess request.

When the printing process request from the client terminal 2 is received(S17), the interface board 5 sends the print data to the printer 4specified by the printer identification information (S18). After theprint data is received from the interface board 5 (S19), the printer 4(control unit 51) saves the print data in the storage unit 52 (S20).Steps S19 and S20 repeat until all print data is received (S21 returnsNo). After all print data is received (S21 returns Yes), the printer 4reads and prints based on the saved print data (prints an image) (S22).

The steps performed when an event that changes the web page 21 isgenerated while the client terminal 2 is receiving an image from thescanner 3 (during the scanning process) is described next with referenceto the flow chart in FIG. 4. Note that a special process is notperformed when an event that changes the web page 21 is not generated,and description thereof is omitted in the following description of theflow chart in FIG. 4.

The client terminal 2 (control unit 61) first starts the imageacquisition process of the scanner 3 by means of the scanner controlscript 24 (S31). If an event that changes the displayed web page 21(that is, the web page 21 in which the currently executing scannercontrol script 24 is embedded) to another page is generated by the userusing the web browser 66 (S32 returns Yes), the client terminal 2continues image acquisition by running the scanner control script 24while simultaneously displaying a message indicating that the scanner 3is operating and an operation selection window for selecting whether ornot to stop the scanning operation of the scanner 3 (S33).

If continuing the scanning operation is selected by the user in thisoperation selection window (S34 returns No), the client terminal 2continues the image acquisition process by running the scanner controlscript 24, and when all image data has been received (S35 returns Yes),ends the image acquisition process (S36). However, if stopping thescanning operation is selected by the user in this operation selectionwindow (S34 returns Yes), the client terminal 2 sends a stop operationrequest to the scanner 3 (S37), interrupts the image acquisition process(S38) in conjunction with losing the scanner control script 24, anddisplays a message indicating that the image acquisition process wasstopped (S39). By thus displaying an operation selection window when anevent that changes the web page 21 occurs, unintended interruption ofthe image acquisition process (image input from the scanner 3) resultingfrom the user accidentally changing the web page can be prevented.

As described above, this embodiment enables acquiring a specific imagefrom a scanner 3 (image input device) using a scanner control script 24(image input control script) embedded in a web page 21. Morespecifically, because a scanner 3 can be controlled using a web browser66 (from within a web page 21), the scanner 3 can be controlled bysimply installing a web browser 66 on the client terminal 2, and, unlikewith the related art, there is no need to install a device driver (ascanner driver) on each client terminal 2. There is also no need for themanufacturer supplying the scanner 3 to develop plural device driversfor different different operating systems, and the related developmentcost can be reduced.

Furthermore, because a web browser 66 is typically already installed onmost modern client terminals 2 (computers including personal computersand smartphones), even users that are not computer-savvy can easily usethe scanner 3 without knowing the operating environment (the type ofoperating system) of the terminal being used by the user.

This embodiment is described using a scanner 3 as an example of an imageinput device, but the invention is not so limited. For example, adigital camera (camera) could be used as an image input device. In thisimplementation, an image input control script that controls (requests aprocess) selecting files and acquiring images stored in the camera, andcontrols (requests a process) acquiring a directory of files stored inthe camera, is embedded in the web page 21 and used to control thecamera.

The identification information that identifies (specifies) the scanner 3or printer 4 is predefined in the scanner control script 24 and printingcontrol script 23 in this embodiment, but the invention is not solimited. For example, when plural scanners 3 and printers 4 areconnected and can be used, the user could be made to select the desiredscanner 3 or printer 4 from a device list (a list of scanners or a listof printers), and identification information for the selected scanner 3or printer 4 sent to the interface board 5 by the corresponding controlscript.

This embodiment describes a configuration in which the interface board 5is installed to the printer 4, but the invention is not so limited and aconfiguration having the interface board 5 installed to the scanner 3 isalso conceivable. In this implementation an interface for connecting tothe board interface 34 of the interface board 5 is disposed to thescanner 3, and an interface that communicates with the communicationunit 33 of the interface board 5 is disposed to the printer 4.

The means (functions) of the interface board 5 in this embodiment canalternatively be rendered by a common personal computer (device server).Further alternatively, a configuration in which the above means aredisposed to the scanner 3 and printer 4 is also conceivable.

Elements of the network system SY (client terminal 2 and interface board5) described above can also be provided as a program. This program canalso be provided stored on a storage medium (not shown in the figure).Examples of such storage media include CD-ROM, flash ROM, memory cards(Compact Flash (R), smart media, memory sticks), Compact Discs,magneto-optical discs, Digital Versatile Discs, and floppy disks.

The hardware configuration of the network system SY and process stepsare also not limited to the foregoing embodiment, and can be changed asdesired without departing from the scope of the invention.

REFERENCE SIGNS LIST

-   1 web application server-   2 client terminal-   3 scanner-   4 printer-   5 interface board-   15 web application-   21 web page-   22 page control script-   23 printing control script-   66 web browser-   71 web page acquisition means-   72 image acquisition request transmission means-   73 image acquisition means-   74 drawing process means-   75 print data generation means-   76 print process request transmission means-   77 event processing means-   81 process request receiving means-   82 process command means-   83 board-side image transmission means-   SY network system

The invention claimed is:
 1. A network system comprising a webapplication server on which a web application operates, one or moreclient terminals that use a web browser to access the web applicationserver, and an image input device that operates in conjunction withoperation of the client terminal, wherein at least the web applicationserver and the client terminal, and the client terminal and the imageinput device, are respectively connected over a network, wherein: theclient terminal comprises a web page acquisition unit that gets from theweb application server a web page having an embedded image input controlscript that operates at least on the web browser and controls imageinput from the image input device, an image acquisition requesttransmission unit that is controlled by the image input control scriptto send an image acquisition request to the image input device when aspecific operation is performed on the acquired web page, an imageacquisition unit that is controlled by the image input control script toacquire an image from the image input device as a response to the imageacquisition request, a selection window display unit that is controlledby the image input control script to display a selection window forselecting whether or not to stop operation of the image input devicewhen a change event that changes the web page occurs while the imageinput device is operating, and a stop operation request transmissionunit that is controlled by the image input control script to send a stopoperation request to the image input device when stopping operation ofthe image input device is selected in the selection window; and theimage input device comprises an image acquisition request receiving unitthat receives the image acquisition request, and an image transmissionunit that sends an image to the client terminal based on the receivedimage acquisition request; wherein the client terminal does not includenor use a device driver to control display of the selection window forselecting whether or not to stop operation of the image input devicewhen a change event that changes the web page occurs while the imageinput device is operating.
 2. A network system described in claim 1,further comprising a printer that connects over a network to the clientterminal, wherein: a printing control script that operates on the webbrowser and controls printing related to the web page is also embeddedin the web page acquired by the web page acquisition unit; the clientterminal includes a drawing process unit that is controlled by the imageinput control script to draw an image acquired by the image acquisitionunit in a specific drawing area, a print data generating unit that iscontrolled by the printing control script in conjunction with a printoperation on the web page to generate print data that converts the imagedata drawn in the drawing area to a form that can be processed by theprinter, and a print data transmission unit that is controlled by theprinting control script to send the generated print data to the printer;and the printer includes a print data receiving unit that receives theprint data sent by the print data transmission unit, and a print controlunit that controls a printing process based on the received print data.3. Control method for a network system that includes a web applicationserver on which a web application operates, one or more client terminalsthat use a web browser to access the web application server, and animage input device that operates in conjunction with operation of theclient terminal, wherein at least the web application server and theclient terminal, and the client terminal and the image input device, arerespectively connected over a network, the control method of the networksystem comprising: the client terminal executing a web page acquisitionstep of getting from the web application server a web page having anembedded image input control script that operates at least on the webbrowser and controls image input from the image input device, an imageacquisition request transmission step that is controlled by the imageinput control script to send an image acquisition request to the imageinput device when a specific operation is performed on the acquired webpage, an image acquisition step that is controlled by the image inputcontrol script to acquire an image from the image input device as aresponse to the image acquisition request, a selection window displaystep that is controlled by the image input control script to display aselection window for selecting whether or not to stop operation of theimage input device when a change event that changes the web page occurswhile the image input device is operating, and a stop operation requesttransmission step that is controlled by the image input control scriptto send a stop operation request to the image input device when stoppingoperation of the image input device is selected in the selection window;and the image input device executing an image acquisition requestreception step to receive the image acquisition request, and an imagetransmission step to send an image to the client terminal based on thereceived image acquisition request; wherein the client terminal does notinclude nor use a device driver to control the display of the selectionwindow for selecting whether or not to stop operation of the image inputdevice when a change event that changes the web page occurs while theimage input device is operating.